package com.mdd.front.service;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import com.github.binarywang.wxpay.exception.WxPayException;
import com.mdd.common.core.AjaxResult;
import com.mdd.front.validate.PayVipValidate;
import com.mdd.front.vo.fast.CashbackGoldCoinDto;
import com.mdd.front.vo.fast.FastArticleTypeVo;

/**
 * 	快递相关
 * @author DEREK
 *
 */
public interface IExpressDeliveryService {

	/**
	 * 	快递分类
	 * @return
	 */
	Map<String,Object> fastType();
	
	/**
	 * 	快递物品分类
	 * @return
	 */
	List<FastArticleTypeVo> fastActicleType();
	
	/**
	 * 	快递订单支付
	 * @param requestObj
	 * @return
	 */
	AjaxResult<Object> payOrder(PayVipValidate requestObj,Integer userId,Integer terminal);
	
	
	/**
	 * 	快递消息通知
	 * @return
	 */
	AjaxResult<Object> noticeMessage();
	
	 String notifyFromAlipay(Map<String,String> params);
	 String notifyFromWxpay(String notifyStr);
	 String notifyFromWxpayRefund(HttpServletRequest request);
	 AjaxResult<Object> orderRefund(PayVipValidate requestObj);
	 
	 void handlePaidNotify(String attach, String outTradeNo, String transactionId) throws WxPayException;
	 
	 void kdCashbackGoldCoin(CashbackGoldCoinDto dto);
}
